#lightweight duplicate state of dominoes game -- used for evaluation functions.
class DominoesDupState
  
  include DominoesGameFunctions
  
  attr_reader :player, :opp, :board, :pool, :started, :prob_hash
  attr_accessor :players_play
  
  def initialize(player, opp, board, pool, prob_hash, players_play)
    @player = player
    @opp = opp
    @board = board
    @pool = pool
    @prob_hash = prob_hash
    @players_play = players_play
  end
  
  def dup
    board,pool,prob_hash = @board.dup, @pool.dup, @prob_hash.dup
    player,opp = @player.dup(board,pool,prob_hash), @opp.dup(board,pool,prob_hash)
    dds = DominoesDupState.new(player, opp, board, pool, prob_hash, @players_play)
    dds
  end
  
end